﻿using System.Runtime.InteropServices;
using System.Runtime.InteropServices.ComTypes;

namespace SilverlightViewport.Common.Interop
{
    [ComImport, 
    InterfaceType(ComInterfaceType.InterfaceIsIUnknown),
    Guid("00000118-0000-0000-C000-000000000046")]
    public interface IOleClientSite
    {
        [PreserveSig]
        int SaveObject();
        [PreserveSig]
        int GetMoniker([In] uint dwAssign, [In] uint dwWhichMoniker, [MarshalAs(UnmanagedType.Interface)] out IMoniker ppmk);
        [PreserveSig]
        int GetContainer([MarshalAs(UnmanagedType.Interface)] out IOleContainer ppContainer);
        [PreserveSig]
        int ShowObject();
        [PreserveSig]
        int OnShowWindow([In] int fShow);
        [PreserveSig]
        int RequestNewObjectLayout();
    }
}
